﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using CBM.Contract.Enitities;
using Microsoft.Practices.Unity;
using System.ComponentModel;

namespace CBM.Contract.Implementation.Entities
{
    public class StripBoek:BaseObject, IComicBook
    {

        private string stripboekNaamField;
        private System.Collections.Generic.IEnumerable<IAuthor> auteursField;
        private System.Collections.Generic.IEnumerable<IAuthor> artistsField;
        private string seriesField;
        private decimal numberField;
        private string publisherField;
        private Image coverField;
        private bool hasThisBookField;

        public string Title
        {
            get
            {
                return stripboekNaamField;
            }
            set
            {
                stripboekNaamField = value;
                FirePropertyChanged("Title");
            }
        }

        public System.Collections.Generic.IEnumerable<IAuthor> Authors
        {
            get
            {
                return auteursField;
            }
            set
            {
                auteursField = value;
                FirePropertyChanged("Authors");
            }
        }

        public event PropertyChangedEventHandler PropertyChanged;


        public System.Collections.Generic.IEnumerable<IAuthor> Artists
        {
            get
            {
                return artistsField;
            }
            set
            {
                artistsField = value;
                FirePropertyChanged("Artists");
            }
        }

        public string Series
        {
            get
            {
                return seriesField;
            }
            set
            {
                seriesField = value;
                FirePropertyChanged("Series");
            }
        }

        public decimal Number
        {
            get
            {
                return numberField;
            }
            set
            {
                numberField = value;
                FirePropertyChanged("Number");
            }
        }

        public string Publisher
        {
            get
            {
                return publisherField;
            }
            set
            {
                publisherField = value;
                FirePropertyChanged("Publisher");
            }
        }

        public Image Cover
        {
            get
            {
                return coverField;
            }
            set
            {
                coverField = value;
                FirePropertyChanged("Cover");
            }
        }

        public bool HasThisBook
        {
            get
            {
                return hasThisBookField;
            }
            set
            {
                hasThisBookField = value;
                FirePropertyChanged("HasThisBook");
            }
        }
    }
}

